ニコニコ動画 Public API 開発
これができるまで、ニコニコ動画には、以下の3つの Public API サーバーがあった
動画Webサイト用API
iPhone用API
Android、その他用API
https://gyazo.com/d7ff2116cbf6cf6106e1c6804d313f1e
動画コアAPI
動画DB等
の部分のみ(図で青い部分)
課題
どうしても
動画コアAPI 開発
iPhone/Android Public API 開発
アプリ 開発
となるので、新機能をアプリでリリースするまで時間がかかる
スマホファーストになっていなかった
iPhone開発チームがが iPhone Public API を保守、Android開発チームが Android Public API を保守している
アプリ開発チームの負担が大きい
iPhoneとAndroidでAPIの仕様が微妙にことなる、ことがある
動画 Public API の開発
上記の課題は開発チーム内で認識されていた
マネージャーから頼まれ、僕がリーダーとなり「動画 Public API」の開発に着手した
結果、現在は以下のような構成になっている
https://gyazo.com/6fe47f705dd581e257c9bf1f8f8cfe6b
この構成のメリット
Web, iPhone, Android 開発はアプリの開発にのみ注力できるようになった
開発がスピーディーになり、機能を全デバイス同時リリースできるようになった
スマホファーストになった
動画のドメインロジックはすべて動画Public APIが担う
デバイスごとに実装がブレることがなくなった
採用技術
PHP
Slim Framework
Linux, MySQL
Ansible
Apache
開発人数
はじめは2人で開発をスタート
途中で一人増えて3人に